package renders

import (
	"net/http"

	"github.com/gin-gonic/gin"
)

// OutJSON 渲染json
func OutJSON(r *gin.Engine) {
	outputJSON := r.Group("/json")
	{

		// gin.H 是map[string]interface{}的缩写
		outputJSON.GET("/some", func(c *gin.Context) {
			// 方式一：自己拼接JSON
			c.JSON(http.StatusOK, gin.H{"message": "Hello world!"})
		})

		outputJSON.GET("/more", func(c *gin.Context) {
			// 方法二：使用结构体
			var msg struct {
				Name    string `json:"user"` // json中key值使用`user`
				Message string
				Age     int
			}
			msg.Name = "小王子"
			msg.Message = "Hello world!"
			msg.Age = 18
			c.JSON(http.StatusOK, msg)
		})
	}
}
